Data storage systems, such as disc drives, typically store information on surfaces of storage media such as magnetic or optical discs. In a typical disc drive, a number of discs are mounted together on a spindle to form a disc stack. The spindle causes the discs to spin and the data surfaces of the disc to pass under respective hydrodynamic and aerodynamic bearing disc head sliders. These head sliders are typically mounted on an actuator arm that moves the head sliders in tandem over the disc surfaces such that all of the head sliders are at the same approximate disc radius at the same time.
When information is stored on a disc it is generally stored in a set of concentric data tracks. The tracks on the disc surface are typically divided into data sectors. Data sectors are the basic units of data storage on a disc surface. A sector is a “pie-shaped” angular section of a track that is bounded on two sides by radii of the disc and on the other side by the perimeter of the circle that defines the track. In other words, the sector is a small storage segment along the length of a track.
Most tracks are available for read/write access by the host computer. These tracks contain user data. Data sectors which contain drive unique information are stored in reserved sectors which are not normally accessible by the host computer. Additionally, a certain number of spare sectors are included in the disc stack. These sectors may be utilized as replacement sectors for any defective sectors in user data as well as the reserved sectors.
Some defective sectors are formed at the time of disc manufacture. However, defects can arise in any of the sectors at various times during the lifetime of the storage system (grown defects). Grown defects include, for example, invading foreign particles which become embedded onto the surface of the disc, or external shocks to the storage system which can cause the transducer to nick or crash onto the surface of the disc. Defective sectors pose either temporary or permanent data retrieval problems.
Read errors are typically determined when the host computer attempts to retrieve user data from a sector and one or more uncorrected errors exist. Typically, the data storage system includes internally programmed error recovery routines such that upon determination of a read error, the data storage system applies a variety of corrective operations to recover user data. Occasionally, the data storage system exhausts all available corrective operations for recovery of data without success. The data storage system will declare a hard error and reallocate the sector by mapping out the bad sector and substituting an unused, reserved sector. The use of these corrective operations and reallocation functions can require a significant amount of time during retrieval of user data and thus, limit the maximum data transfer rate of the data storage system.
Embodiments of the present invention provide solutions to these and other problems, and offer other advantages over the prior art.